package persistencia.carreras.ensambladores.general;

import persistencia.compartido.MicroEnsamblador;
import modelo.geometria.Circunferencia;
import modelo.geometria.Figura;
import modelo.geometria.Vector;

public class EnsambladorCircunferencia extends MicroEnsamblador<Figura> {

	@Override
	public String escribir(Figura microEntidad) {
		String resultado = null;
		if (microEntidad instanceof Circunferencia) {
			Circunferencia c = (Circunferencia)microEntidad;
			Double x = c.getCentro().getX();
			Double y = c.getCentro().getY();
			Double radio = c.getRadio();
			
			resultado = x +sep+ y +sep+ radio;
			resultado+= en + Circunferencia.class.getSimpleName();
		}
		
		return resultado;
	}
	
	public static Circunferencia leerCircunferencia(String figura) {
		String[] tipo = figura.split(en);
		
		Circunferencia c = null;
		if (tipo[1].compareTo(Circunferencia.class.getSimpleName()) == 0) {
			String[] valores = tipo[0].split(sep);
			double x = Double.valueOf(valores[0]);
			double y = Double.valueOf(valores[1]);
			double radio = Double.valueOf(valores[2]);

			c = new Circunferencia(new Vector(x,y), radio);
		}
		return c;
	}

	@Override
	public Figura leer(String microEntidad) {
		return leerCircunferencia(microEntidad);
	}
}
